Method for the modification of three-dimensional objects

ABSTRACT

Method for the modification of three-dimensional objects via an input device allowing only two-dimensional input. The method comprises creating a three-dimensional object and displaying a three-dimensional representation of the object. The method further comprises activating the three-dimensional object and displaying a representation of a three-dimensional coordinate system. One of the axes of the three-dimensional coordinate system assigned to the object is selected, and the origin of the assigned coordinate system is shifted within a global three-dimensional coordinate system along a line defined by the orientation of the selected axis of the assigned coordinate system. The three-dimensional object is then computed relative to the global coordinate system after shifting according to the displacement of the origin of the assigned coordinate system. A representation of the shifted three-dimensional object is then displayed on the computer screen.

TECHNICAL FIELD

The following invention relates to a method for the modification of athree-dimensional object displayed on a computer screen with the help ofan input device.

BACKGROUND OF THE INVENTION

Known graphics programs provide a multitude of possibilities to modify adisplayed object. For example, it is possible to move the object to adifferent location, to rotate the object, or to compress or stretch theobject in one or two dimensions.

High-end graphics programs, such as the AutoCAD® application software,are furthermore able to display several views of a given objectsimultaneously on the screen. These views usually include athree-dimensional view (e.g., isometric view). These graphics programs,however, allow modifications to the object only in the two-dimensionalrepresentations. When a change is performed in one two-dimensional view,the corresponding change is calculated for the other two-dimensionalviews. The user can thus view the effects of a modification that isperformed simultaneously in all views, even in the three-dimensionalview. These graphics programs, however, do not allow directmodifications to the object shown in the three-dimensional view.

SUMMARY OF THE INVENTION

It is the task of the present invention to provide a method for thedirect modification of an object in the three-dimensional view with thehelp of an input device, preferably a mouse input device allowing onlytwo-dimensional input.

This task is accomplished by a method comprising the following steps:

Creating a three-dimensional object; displaying a three-dimensionalrepresentation of the three-dimensional object on a computer screen;activating the three-dimensional object through an operation of theinput device relating to the representation of the object; displaying arepresentation of a three-dimensional coordinate system on the computerscreen--with the three-dimensional coordinate system being assigned tothe active three-dimensional object; selecting one of the axes of thethree-dimensional coordinate system assigned to the object by way of anoperation of the input device--with the input operation relating to therepresentation of the coordinate system displayed on the screen;shifting the origin of the coordinate system assigned to the objectwithin a global three-dimensional coordinate system along a line definedby the orientation of the selected axis of the assigned coordinatesystem within the global three-dimensional coordinate system, and in adirection which is determined by an operation performed with the inputdevice; computing the three-dimensional object relative to the globalcoordinate system after moving the object in accordance with themovement of the origin of the assigned coordinate system; and displayinga representation of the shifted three-dimensional object on the computerscreen.

According to a preferred embodiment, the displayed object can also berotated which is achieved by the following additional steps:

Selecting a first axis of the three-dimensional coordinate systemassigned to the object through an operation of the input device with theinput operation relating to the representation of the assignedcoordinate system displayed on the screen; rotating the assignedcoordinate system around either the second or third coordinateaxis--with the second axis being selected, if a movement of the firstaxis towards the third axis is induced by means of the input device andwhereby the rotation is performed around the third axis, if a movementof the first axis towards the second axis is induced by means of theinput device; computing the three-dimensional object relative to theglobal coordinate system after rotation of the object in accordance withthe rotation of the assigned coordinate system; and displaying arepresentation of the rotated three-dimensional object on the computerscreen.

Preferably, the method according to the invention furthermore providesthe ability to scale the three-dimensional object, which is achieved bythe following steps:

Selecting an axis of the three-dimensional coordinate system assigned tothe object through an operation of the input device with the inputoperation relating to the representation of the assigned coordinatesystem displayed on the screen; effectuating an extension or stretchoperation to the selected axis of the coordinate system assigned to theobject by means of the input device; computing the three-dimensionalobject relative to the global coordinate system after positive ornegative stretch of the object along the selected axis of the assignedcoordinate system; and displaying a three-dimensional representation ofthe stretched (or compressed) three-dimensional object on the computerscreen.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 illustrates the operation to be performed by the user in order toaccomplish a displacement of the object marked by the dashed outlinesalong one of the axes X, Y, Z of the assigned coordinate system.

FIG. 2 illustrates in which way a rotation of the coordinate system andthus of the assigned object can be performed.

FIG. 3 illustrates in which way the coordinate system and thus theassigned object can be scaled.

DETAILED DESCRIPTION OF THE INVENTION

The present invention provides for the modification of an object using athree-dimensional representation of the object. Input operations tocontrol the modification are performed preferably with the help of amouse input device. As is generally known, a computer mouse can be usedto perform click operations as well as shift operations. According to apreferred embodiment [of the invention], the task of transposingtwo-dimensional mouse operations onto a three-dimensional object saccomplished by realizing the modification of the displayed objectindirectly through a modification of the coordinate system assigned tothe object in question. Preferably, the representation of the assignedcoordinate system includes discrete modification points, so as toprovide a reliable means for detecting the type of modification the userintended to induce through a mouse operation performed. The fact, thatthe displayed coordinate system includes the above-mentionedmodification points at its origin as well as at the endpoints of thethree axes displayed, allows the software to determine whether the userintends to perform a modification starting from the origin of thecoordinate system or from the endpoints of one of the axes. Clicking onthe center of the coordinate system can, for example, be aimed atinducing an operation for shifting the entire coordinate system acrossthe screen. The direction into which the coordinate system is moved[during this operation] must preferably be identical to one of the threemain directions determined by [the axes of] the coordinate system. Theactual direction of the movement is determined preferably by evaluatinga mouse operation performed by the user and comparing the vector ofmotion derived from this operation to the vectors of the main axes. Themodification is then performed along the axis which best matches thevector derived.

A rotation of the coordinate system and therefore of the object as wellas of the object's representation is realized preferably by selectingone of the modification points at the endpoints of the axes andafterwards performing a mouse operation pointing towards one of theother two axes. This results in a rotation around the axis which wasneither selected nor is parallel to the mouse movement. Similarly, it isalso possible to scale the object as well as the representation of theobject by scaling the assigned coordinate system. This is again realizedpreferably by selecting one of the modification points at the endpointsof the axes of the coordinate system and afterwards performing a mouseoperation along the same axis. Moving the mouse pointer towards theorigin of the coordinate system results in a reduction of thecorresponding dimension of the object, whereas moving the mouse pointeraway from the origin of the coordinate system results in an extension ofthe object.

Further preferred embodiments of the present invention are defined bythe dependent claims below.

In the following, the invention is explained in more detail withreference to the enclosed drawings. FIGS. 1 through 3 containrepresentations of a coordinate system assigned to a three-dimensionalobject as well as outlined mouse operations to illustrate the move,rotate and scale modifications of objects.

The present invention is especially suited for use in conjunction withthe AutoCAD® graphics application software or similar software programs.These applications include databases providing basic objects such ascylinders, rectangles etc.; the user can retrieve these objects from thedatabase and then apply appropriate modifications to scale them to thedesired size and fit them into position. Preferably, in the process ofretrieving these basic objects from the database, they are intelligentlyassigned a coordinate system, which is generally arranged in such a waythat its coordinate axes are orthogonal or parallel to the main faces ofthe respective body.

According to a preferred embodiment, an object retrieved from thedatabase is displayed on the screen in isometric view and after theobject has been activated by means of a mouse click, a representation ofthe coordinate system assigned to the object is displayed. Thisrepresentation of the coordinate system includes given modificationpoints, which have to be selected before a modification can beperformed.

Providing discrete modification points facilitates the translation of agiven mouse operation to the desired type of modification. Therefore,the representation of the coordinate system preferably includes amodification symbol at its origin as well as at both endpoints of allthree coordinate axes. The coordinate system is preferably displayed atthe object's origin, but can also be placed outside the element. Placingthe coordinate system outside the object allows in particular rotarymovements of the object around an external axis, which is described inmore detail below.

FIG. 1 contains a representation of the coordinate system assigned to anobject as displayed on the screen. Since the representation must beisometric, the axes of the displayed coordinate system are notperpendicular to each other, as is the case for the actually assignedcoordinate system used for computing the modified object. According tothe present invention, a modification effected by the user along one ofthe three axes is detected by tracking the movement performed by theuser with the mouse and deriving a vector of motion from this operation.The orientation of the vector is then compared to the orientation of theaxes of the isometric representation of the coordinate system on thescreen. The operation performed by the user is deemed a movement towardsthe axis which best matches the vector obtained. Such verification canbe realized by projecting the derived vector onto the correspondingaxes, as is known to the skilled man.

FIG. 1 illustrates the operation to be performed by the user in order toaccomplish a displacement of the object marked by the dashed outlinesalong one of the axes X, Y, Z of the assigned coordinate system. First,the user selects the spherical modification point in the center of thedisplayed coordinate system inducing the system to expect a shiftoperation to follow. As mentioned above, the subsequent mouse operationis being traced in order to obtain a corresponding vector of motion.This vector is then compared to the displayed coordinate axes withregard to its direction, and a displacement is performed in thedirection of the axis whose orientation best matches the obtainedvector. The extent of the displacement is proportional to the mousemovement performed by the user. The movement of the coordinate systemacross the screen along a given axis results in a displacement of thecoordinate system assigned to the object within a global coordinatesystem. Based on the relocation of the coordinate system, then theposition of the assigned object within the global coordinate system canbe determined and the respective object can be saved with these new(absolute) coordinates. Based on the thus computed object, arepresentation of the object on the screen in isometric view can bederived, so that a representation of the shifted object immediatelyafter moving the representation of the coordinate system across thescreen is displayed at the corresponding position on the monitor.

FIG. 2 illustrates in which way a rotation of the coordinate system andthus of the assigned object can be performed. To perform a rotation, forexample around the Z-axis, one of the modification points at the ends ofthe Y-axis is being selected and afterwards a movement along the X-axisis performed. A rotation around the Z-axis can obviously also berealized by activating a modification point on the X-axis and afterwardsperforming an appropriate mouse operation in the direction of theY-axis. Similar to the shift operation, the resulting rotation of theobject is being calculated on the basis of the rotation of the assignedcoordinate system. After computation, a description of the objectrelative to the global coordinate system is available taking intoconsideration the rotation performed. Based on these new object data, arepresentation of the object suitable for display can be computed anddisplayed on the screen. Thus, a properly rotated representation of theobject is displayed almost immediately after conclusion of the rotationof the coordinate system.

FIG. 3 illustrates in which way the coordinate system and thus theassigned object can be scaled. To compress or stretch the object in thedirection of the Y-axis, a modification point on the Y-axis is beingselected and shifted towards the center of the coordinate system or awayfrom it. The representation of the assigned object is then displayedstretched by an appropriate value in the direction of the Y-axis.

As mentioned above, the position of the assigned coordinate systemrelative to the corresponding object can preferably be freelydetermined. This is especially useful, if several objects are combined,because this allows the user to choose a convenient reference point. Inparticular, the origin of the coordinate system can be placed outsidethe assigned object to allow a rotation of the object around an externalaxis. As explained before, initially, the assigned coordinate systemwill preferably be placed at the origin of the corresponding object.Nevertheless, it can be intelligently assigned right from the start inthat the coordinate system is fitted to the main faces of the body inquestion in the best possible way. Once the user shifts the coordinatesystem from the originally assigned position, this displacement ispreferably stored so that the coordinate system is displayed again atthat special position whenever the corresponding object is beingactivated again.

The corresponding German Patent Application No. 196 32 223.5, filed Aug.9, 1996, is hereby incorporated by reference.

Although the present invention has been described in terms of preferredembodiments, it is not intended that the invention be limited to theseembodiments. Modifications within the scope of the present inventionwill be apparent. The scope of the present invention is defined by theclaims that follow.

I claim:
 1. Method for the modification of three-dimensional objects bymeans of an input device, comprising the following steps:creating athree-dimensional object; displaying a three-dimensional representationof the three dimensional object on a computer screen; activating thethree-dimensional object by way of an operation of the input devicerelating to the representation of the object; displaying arepresentation of a three-dimensional coordinate system on the computerscreen with the three-dimensional coordinate system being assigned tothe activated three-dimensional object; selecting one of the axes of thethree-dimensional coordinate system assigned to the object by means ofan operation of the input device, with the input operation relating tothe representation of the coordinate system displayed on the screen;shifting the origin of the coordinate system assigned to the objectwithin a global three-dimensional coordinate system along a line definedby the orientation of the selected axis of the assigned coordinatesystem within the global three-dimensional coordinate system, and in onedirection (of the line) which is determined by an operation performedwith the input device; computing the three-dimensional object relativeto the global coordinate system after moving the object in accordancewith the movement of the origin of the assigned coordinate system; anddisplaying a representation of the shifted three-dimensional object onthe computer screen; wherein the representation of the assignedcoordinate system displayed on the screen is provided with modificationpoints at its origin as well as at the endpoints of the axes displayedand a modification of the coordinate system can be performed only byclicking on these symbols.
 2. Method according to claim 1 including thefollowing further steps:selecting a first axis of the three-dimensionalcoordinate system assigned to the object by way of an operation of theinput device with the input operation relating to the representation ofthe assigned coordinate system displayed on the screen; rotating theassigned coordinate system around either the second or third coordinateaxis with the second axis being selected, if a movement of the firstaxis towards the third axis is induced by means of the input device andwherein the rotation is performed around the third axis if a movement ofthe first axis towards the second axis is induced by means of the inputdevice; computing the three-dimensional object relative to the globalcoordinate system after rotation of the object in accordance with therotation of the assigned coordinate system; and displaying arepresentation of the rotated three-dimensional object on the computerscreen.
 3. Method according to claim 1 including the following furthersteps:selecting an axis of the three-dimensional coordinate systemassigned to the object by way of an operation of the input device withthe input operation relating to the representation of the assignedcoordinate system displayed on the screen; effectuating a stretchoperation (extension or compression) to the selected axis of thecoordinate system assigned to the object by means of the input device;computing the three-dimensional object relative to the global coordinatesystem after stretching or compressing the object along the selectedaxis of the assigned coordinate system; and displaying athree-dimensional representation of the stretched or compressedthree-dimensional object on the computer screen.
 4. Method according toclaim 1, with the input device being a computer mouse which can be usedto select the axes of the assigned coordinate system by clicking; themouse can further be used to induce a displacement of the assignedcoordinate system or movement of one of the axes of the assignedcoordinate system to effectuate a rotation or stretch of one of the axesof the assigned coordinate system by means of an appropriately directedmouse operation.
 5. Method according to claim 4, wherein a performedmouse click or shift operation is translated to the object modificationwhich--taking into consideration the representation of thethree-dimensional object displayed on the screen or the assignedcoordinate system--from the choice of possible modification types bestmatches the user's intention.
 6. Method according to claim 1, whereinthe displacement of the assigned coordinate system is induced byclicking the modification point at the origin of the representation ofthe assigned coordinate system and subsequently performing anaccordingly directed movement with the mouse; wherein a rotation of theassigned coordinate system is induced by clicking the modificationpoints at one of the axes of the representation of the assignedcoordinate system and subsequently performing an accordingly directedmovement with the mouse; and wherein a stretch or compression of an axisof the assigned coordinate system is induced by clicking a modificationpoint of the respective axis of the representation of the assignedcoordinate system and subsequently performing an accordingly directedmovement with the mouse along the respective axis of the representation.7. Method according to claim 1, wherein the position of the modificationpoints can be freely selected and is not required to lie on the axes ofthe coordinate system.
 8. Method according to claim 1, wherein theposition of the origin of the assigned coordinate system can be freelyselected relative to the corresponding object and can in particular lieoutside the object.
 9. Method according to claim 1, wherein the assignedcoordinate system can be moved or rotated or scaled without thismodification having any effect on the related object.
 10. Methodaccording to claim 1, wherein the assigned coordinate system can bemoved, rotated or scaled in order to be attributed to another objectwithout this modification having immediate influence on the relatedobject and the related object being afterwards relocated to the positiondetermined by the coordinate system and shifted to the appropriateorientation.
 11. Method according to claim 1, wherein the position ofthe coordinate system assigned to an object retrieved from a database isautomatically chosen in such a way that it best suits the shape of theobject.
 12. An apparatus for the modification of three-dimensionalobjects by means of an input device, comprising:means for displaying athree-dimensional representation of a three-dimensional object on acomputer screen; means for activating the three-dimensional object byway of an operation of the input device relating to the representationof the object; means for displaying a representation of athree-dimensional coordinate system on the computer screen with thethree-dimensional coordinate system being assigned to the activatedthree-dimensional object; means for selecting one of the axes of thethree-dimensional coordinate system assigned to the object by means ofan operation of the input device, with the input operation relating tothe representation of the coordinate system displayed on the screen;means for shifting the origin of the coordinate system assigned to theobject within a global three-dimensional coordinate system along a linedefined by the orientation of the selected axis of the assignedcoordinate system within the global three-dimensional coordinate system,and in one direction (of the line) which is determined by an operationperformed with the input device; means for computing thethree-dimensional object relative to the global coordinate system aftermoving the object in accordance with the movement of the origin of theassigned coordinate system; and means for displaying a representation ofthe shifted three-dimensional object on the computer screen; wherein therepresentation of the assigned coordinate system displayed on the screenis provided with modification points at its origin as well as at theendpoints of the axes displayed and a modification of the coordinatesystem can be performed only by clicking on these symbols.
 13. Apparatusaccording to claim 12, further comprising:means for selecting a firstaxis of the three-dimensional coordinate system assigned to the objectby way of an operation of the input device with the input operationrelating to the representation of the assigned coordinate systemdisplayed on the screen; means for rotating the assigned coordinatesystem around either the second or third coordinate axis with the secondaxis being selected, if a movement of the first axis towards the thirdaxis is induced by means of the input device and wherein the rotation isperformed around the third axis if a movement of the first axis towardsthe second axis is induced by means of the input device; means forcomputing the three-dimensional object relative to the global coordinatesystem after rotation of the object in accordance with the rotation ofthe assigned coordinate system; and means for displaying arepresentation of the rotated three-dimensional object on the computerscreen.
 14. Apparatus according to claim 12, further comprising:meansfor selecting an axis of the three-dimensional coordinate systemassigned to the object by way of an operation of the input device withthe input operation relating to the representation of the assignedcoordinate system displayed on the screen; means for effectuating astretch operation (extension or compression) to the selected axis of thecoordinate system assigned to the object by means of the input device;means for computing the three-dimensional object relative to the globalcoordinate system after stretching or compressing the object along theselected axis of the assigned coordinate system; and means fordisplaying a three-dimensional representation of the stretched orcompressed three-dimensional object on the computer screen. 15.Apparatus according to claim 12, wherein the input device comprises acomputer mouse that can be used to select the axes of the assignedcoordinate system by clicking.
 16. Apparatus according to claim 15,further comprising means for translating a performed mouse click orshift operation to the object modification that, from the choice ofpossible modification types, best matches the user's intention, takinginto consideration the representation of the three-dimensional objectdisplayed on the screen or the assigned coordinate system.
 17. Apparatusaccording to claim 12, further comprising means for inducing adisplacement of the assigned coordinate system by clicking themodification point at the origin of the representation of the assignedcoordinate system and subsequently performing an accordingly directedmovement with the mouse;wherein a rotation of the assigned coordinatesystem is induced by clicking the modification points at one of the axesof the representation of the assigned coordinate system and subsequentlyperforming an accordingly directed movement with the mouse; and whereina stretch or compression of an axis of the assigned coordinate system isinduced by clicking a modification point of the respective axis of therepresentation of the assigned coordinate system and subsequentlyperforming an accordingly directed movement with the mouse along therespective axis of the representation.
 18. Apparatus according to claim12, wherein the position of the modification points can be freelyselected and is not required to lie on the axes of the coordinatesystem.
 19. Apparatus according to claim 12, wherein the position of theorigin of the assigned coordinate system can be freely selected relativeto the corresponding object and can in particular lie outside theobject.
 20. Apparatus according to claim 12, further comprising meansfor moving or rotating or scaling the assigned coordinate system withoutthis modification having any effect on the related object.
 21. Apparatusaccording to claim 12, further comprising means for moving, rotating orscaling the assigned coordinate system in order to be attributed toanother object without this modification having immediate influence onthe related object and the related object being afterwards relocated tothe position determined by the coordinate system and shifted to theappropriate orientation.
 22. Apparatus according to claim 12, furthercomprising means for automatically choosing the position of thecoordinate system assigned to an object retrieved from a database insuch a way that it best suits the shape of the object.
 23. An article ofmanufacture comprising a program storage medium readable by a computerand embodying one or more instructions executable by the computer toperform method steps for the modification of three-dimensional objectsby means of an input device, the method comprising the stepsof:displaying a three-dimensional representation of a three-dimensionalobject on a computer screen; activating the three-dimensional object byway of an operation of the input device relating to the representationof the object; displaying a representation of a three-dimensionalcoordinate system on the computer screen with the three-dimensionalcoordinate system being assigned to the activated three-dimensionalobject; selecting one of the axes of the three-dimensional coordinatesystem assigned to the object by means of an operation of the inputdevice, with the input operation relating to the representation of thecoordinate system displayed on the screen; shifting the origin of thecoordinate system assigned to the object within a globalthree-dimensional coordinate system along a line defined by theorientation of the selected axis of the assigned coordinate systemwithin the global three-dimensional coordinate system, and in onedirection (of the line) which is determined by an operation performedwith the input device; computing the three-dimensional object relativeto the global coordinate system after moving the object in accordancewith the movement of the origin of the assigned coordinate system; anddisplaying a representation of the shifted three-dimensional object onthe computer screen; wherein the representation of the assignedcoordinate system displayed on the screen is provided with modificationpoints at its origin as well as at the endpoints of the axes displayedand a modification of the coordinate system can be performed only byclicking on these symbols.
 24. Article of manufacture according to claim23, wherein the method further comprises:selecting a first axis of thethree-dimensional coordinate system assigned to the object by way of anoperation of the input device with the input operation relating to therepresentation of the assigned coordinate system displayed on thescreen; rotating the assigned coordinate system around either the secondor third coordinate axis with the second axis being selected, if amovement of the first axis towards the third axis is induced by means ofthe input device and wherein the rotation is performed around the thirdaxis if a movement of the first axis towards the second axis is inducedby means of the input device; computing the three-dimensional objectrelative to the global coordinate system after rotation of the object inaccordance with the rotation of the assigned coordinate system; anddisplaying a representation of the rotated three-dimensional object onthe computer screen.
 25. Article of manufacture according to claim 23,wherein the method further comprises:selecting an axis of thethree-dimensional coordinate system assigned to the object by way of anoperation of the input device with the input operation relating to therepresentation of the assigned coordinate system displayed on thescreen; effectuating a stretch operation (extension or compression) tothe selected axis of the coordinate system assigned to the object bymeans of the input device; computing the three-dimensional objectrelative to the global coordinate system after stretching or compressingthe object along the selected axis of the assigned coordinate system;and displaying a three-dimensional representation of the stretched orcompressed three-dimensional object on the computer screen.
 26. Articleof manufacture according to claim 23, wherein the input device comprisesa computer mouse that can be used to select the axes of the assignedcoordinate system by clicking; the mouse can further be used to induce adisplacement of the assigned coordinate system or movement of one of theaxes of the assigned coordinate system to effectuate a rotation orstretch of one of the axes of the assigned coordinate system by means ofan appropriately directed mouse operation.
 27. Article of manufactureaccording to claim 26, wherein a performed mouse click or shiftoperation is translated to the object modification that, from the choiceof possible modification types, best matches the user's intention,taking into consideration the representation of the three-dimensionalobject displayed on the screen or the assigned coordinate system. 28.Article of manufacture according to claim 23, wherein a displacement ofthe assigned coordinate system is induced by clicking the modificationpoint at the origin of the representation of the assigned coordinatesystem and subsequently performing an accordingly directed movement withthe mouse;wherein a rotation of the assigned coordinate system isinduced by clicking the modification points at one of the axes of therepresentation of the assigned coordinate system and subsequentlyperforming an accordingly directed movement with the mouse; and whereina stretch or compression of an axis of the assigned coordinate system isinduced by clicking a modification point of the respective axis of therepresentation of the assigned coordinate system and subsequentlyperforming an accordingly directed movement with the mouse along therespective axis of the representation.
 29. Article of manufactureaccording to claim 23, wherein the position of the modification pointscan be freely selected and is not required to lie on the axes of thecoordinate system.
 30. Article of manufacture according to claim 23,wherein the position of the origin of the assigned coordinate system canbe freely selected relative to the corresponding object and can inparticular lie outside the object.
 31. Article of manufacture accordingto claim 23, wherein the assigned coordinate system can be moved orrotated or scaled without this modification having any effect on therelated object.
 32. Article of manufacture according to claim 23,wherein the assigned coordinate system can be moved, rotated or scaledin order to be attributed to another object without this modificationhaving immediate influence on the related object and the relating objectbeing afterwards relocated to the position determined by the coordinatesystem and shifted to the appropriate orientation.
 33. Article ofmanufacture according to claim 23, wherein the position of thecoordinate system assigned to an object retrieved from a database isautomatically chosen in such a way that it best suits the shape of theobject.